package com.dynabook.ems.model.entity;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 
 * @TableName ems_bom
 */
@TableName(value ="ems_bom")
@Data
public class EmsBom implements Serializable {

    @TableId(value = "id",type= IdType.ASSIGN_ID)
    private Long id;
    /**
     * bom单号
     */
    @ApiModelProperty("BOM单号")
    @TableField(value = "bom_num")
    private String bomNum;

    /**
     * 成品型号前缀
     */
    @ApiModelProperty("成品型号前缀")
    @TableField(value = "product_name_prefix")
    private String productNamePrefix;

    /**
     * 成品型号后缀
     */
    @ApiModelProperty("成品型号后缀")
    @TableField(value = "product_name_suffix")
    private String productNameSuffix;

    /**
     * 成品型号
     */
    @ApiModelProperty("成品型号完整名称")
    @TableField(value = "finished_product_model")
    private String finishedProductModel;

    /**
     * 成品名称
     */
    @ApiModelProperty("成品名称")
    @TableField(value = "finish_product_name")
     private String finishProductName;

    /**
     * 机型名称
     */
    @ApiModelProperty("机型名称")
    @TableField(value = "machine_name")
    private String machineName;

    /**
     * 版本
     */
    @ApiModelProperty("版本号")
    @TableField(value = "version")
    private String version;

    /**
     * 关联工单
     */
    @ApiModelProperty("关联工单")
    @TableField(value = "associated_work_order")
    private String associatedWorkOrder;

    /**
     * 用户id
     */
    @ApiModelProperty("用户ID")
    @TableField(value = "user_id")
    private String userId;

    /**
     * 用户名
     */
    @ApiModelProperty("用户名")
    @TableField(value = "user_name")
    private String userName;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @TableField(value = "insert_time")
    private LocalDateTime insertTime;

    /**
     * 更新时间
     */
    @ApiModelProperty("更新时间")
    @TableField(value = "update_time")
    private LocalDateTime updateTime;

    /**
     * 是否是新版本
     */
    @ApiModelProperty("是否是新版本")
    @TableField(value = "is_new_version")
    private Integer isNewVersion;

    /**
     * 删除标识
     */
    @ApiModelProperty("删除标识")
    @TableField(value = "is_delete")
    @TableLogic
    private Integer isDelete;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}